/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.com.claro.administracionSolicitudes.entity;

import co.com.claro.administracionSolicitudes.entity.enums.MovimientosEnum;
import co.com.claro.administracionSolicitudes.dao.exceptions.ClaroException;

/**
 *
 * @author Mike
 */
public abstract class EntidadBase {
    
    private String usuario;
//    private String descripcion;
//    private Date fechaMovimiento;
    
    public abstract String obtenerNombreClase();

    public String getUsuario() {
        return usuario;
    }

    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }
    
    /**
     * Método que crea el objeto HistoricoParametros a partir de los parámetros pasados
     * @param entidadBase, objeto que se piensa modificar
     * @param movimientosEnum, tipo de movimiento que se le va a hacer al objeto
     * @return HistoricoParametros, objeto listo para insertar en la tabla de historico parametros
     */
    public HistoricoParametros crearHistorico(EntidadBase entidadBase, MovimientosEnum movimientosEnum) throws ClaroException{
        throw new ClaroException("Este método no se debe implementar en la entidad base.", null);
    }
    
    
}
